1. Technical Field
The present invention relates generally to the field of streaming. More specifically, the present invention is related to generating streaming data in packetized form.
2. Discussion of Prior Art
Many electronic networks such as local area networks (LANs), metropolitan area networks (MANs), and wide area networks (WANs) are increasingly being used to transport streaming media whose real-time data transport requirements exhibit high sensitivity to data loss and delivery time distortion. The technical literature is replete with various schemes to implement Quality of Service (QOS) on such networks to address the requirements of streaming media, especially when intermixed with conventional, time-insensitive, best-effort delivery protocol stack data traffic. To verify the QOS intended effectiveness, systems must be tested under stress conditions. Tests are used to verify the QOS design, implementation, and system configuration after deployment. Regardless of whether QOS-enabled or non-QOS-enabled networks are employed, it is necessary to test and verify the behavior of packet loss, delivery time distortion, and other real-time parameters of the network while operating under stress conditions that may occur when the network is used in production. Such production stress conditions often involve hundreds of streams when the network operating rate is near the currently popular 1 Gigabit per second rate. 10 Gigabit per second rate production networks under worst case loads often operate with several thousand streams.
There are many kinds of servers designed to offer high stream counts to gigabit and 10 gigabit networks for the Video on Demand marketplace, for example, that can be used to generate test traffic but consist of multiple CPUs, hard drives, large amounts of memory, and system control overhead. Such feature sets are appropriate for the design application space for these servers which require large, high availability storage arrays and multiple, high availability network interfaces to maintain a high revenue stream in the event of a single hardware failure. It is possible for such servers to generate heavy network loads for the testing application but they tend to be expensive, complex to configure for the test application, and restricted in flexibility in generating a mix of traffic types since they only generate what has been previously loaded on their storage media. These servers also tend to be limited in their capability to generate arbitrary test conditions such as particular error bit patterns in streams for testing Forward Error Correction (FEC) devices for example, limited in their capability to generate arbitrary addressed streams for verifying all network delivery paths, and limited in their capability to introduce stream encoding errors or transport errors for system testing.
There are a small number of test signal generators that can generate stream flows with selectable error conditions for testing. These are intended for media decoder testing and qualification, and for low bandwidth network device and system testing. These test generators tend to be limited in the number of streams that can be generated due to limited on-board storage capabilities and limited processing capabilities. Employing this class of test generators for loaded network testing is usually prohibitively expensive and complex due to the number of devices required and the number of network ports required to combine their many outputs to achieve the heavy network loads for stress testing.
Whatever the precise merits, features, and advantages of the above-mentioned prior art schemes, they fail to achieve or fulfill the purposes and/or the economies of the present invention.